Virtual high definition video player

ABSTRACT

A video service is provided by one or more servers which communicate directly with one more clients over a network. The service may provide digital optical disc data storage formatted video, such as for example a Blu-ray format video, and allows Blu-ray video to be streamed to a client device over the network. The system may utilize direct and fast content delivery of content typically found on a high definition digital optical disc. The content may include a movie as well as featurettes and other content. The video service may also include augmented content and may provide overlay content. In addition to these features, the video streaming service may also provide community content as an overlay to improve a user&#39;s viewing experience.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation and claims the priority benefit of U.S. patent application Ser. No. 14/335,793 filed Jul. 18, 2014, issuing as U.S. Pat. No. 9,635,424, the disclosure of which is incorporated herein by reference.

BACKGROUND

Field of the Invention

The present invention relates to streaming of digital media. In particular, the present invention relates to streaming of video content from a disk player and other sources.

Related Art

As transmission speed and capacity for networks increases, more applications and data are provided over those networks. For example, companies provide streaming video over the Internet. The video content may include a movie transmitted directly to a client device. Additional content such as commentary and featurettes which may be included on a physical DVD disc or Blu-ray disc are typically not transmitted or made available by the service providers—only the movie itself. Additionally, the videos are usually provided via a data stream that can only be watched in sequence. Video stream providers do not allow a user to view any part of the video they wish without any delay, especially when the video is a high definition video. Rather, previous solutions pre-buffer portions of a video to allow only the pre-buffered portion to be provided to the customer.

What is needed is an improved method for providing a high definition video to a client over a network.

SUMMARY

The present system provides a virtual high definition video service over a network. The service may be provided by one or more servers that may each directly connect with and provide content to one or more clients. The service may provide digital optical disc data storage formatted video, such as for example a Blu-ray, DVD, laser disk, CD, 3D, 4 k, and 8K format video. The system may allow video to be streamed to a client device over the network. The system may utilize direct and fast content delivery of content typically found on a high definition digital optical disc such as for example a Blu-ray or DVD disc. The content may include a movie as well as featurettes and other content typically found on such disks. The video service may also include augmented content and may provide overlay content. In addition to these features, the video streaming service may also provide community content as an overlay to improve a user's viewing experience.

In an embodiment, a system for providing video content over a network may include a high definition video player and a server. The high definition video player outputs frames of high definition video content. The server may receive the high definition video content from the high definition video player and transmit each frame of the high definition video content to a client over a network.

BRIEF DESCRIPTION OF FIGURES

FIG. 1 is a block diagram of a system for providing a virtual Blu-ray experience to a user over a network.

FIG. 2 is a block diagram of an application server.

FIG. 3 is a block diagram of a computing environment for use with the present technology.

DETAILED DESCRIPTION

The present system includes one or more servers that provide a video service over a network. The video service may provide digital optical disc data storage formatted video such as Blu-ray, DVD, laser disk, CD, 3D, 4 k, and 8K format video. The system may allow video to be streamed to a client device directly from a server over the network. The system may utilize direct and fast content delivery of content typically found on a digital optical disc such as a Blu-ray disc or DVD disk. The content may include a movie as well as featurettes and other content typically found on such disks. The video service may also include augmented content and may provide overlay content. In addition to these features, the video streaming service may also provide community content as an overlay to improve a user's viewing experience.

The present system allows a user to provide input to control playback of digital video at a client device such that the control input is ultimately received and implemented at a server. The user may effectively fast forward, rewind, skip to other parts of a movie, access other content, and experience other content provided by the server by providing input at a client device. The server may include one or more video players such as Blu-ray, DVD, laser disk, CD, 3D, 4 k, 8 k and other disc players. The video output by the server's video player is transmitted to the user frame process by frame process over a high speed network. In some instances, only changes between frames are transmitted to a client device by the server. By providing the video output process frame by process frame, there is no need to stream and cache video data, and any latency associated with allowing a data stream to load in time for viewing are avoided.

FIG. 1 is a block diagram of a system for providing a virtual Blu-ray experience to a user over a network. The system of FIG. 1 includes client 110, client 120, and application server 150. Clients 110 and 120 may include devices which are suitable for receiving a high definition data stream from application server 150. Client 110 may be implemented as a mobile device, a gaming console, a computer device, or some other device suitable for receiving high definition data such as video frames.

Clients 110 and 120 may communicate with application server 150 over network 130. Network 130 may include a private network, a public network, a local area network, a wide area network, a cellular network, an intranet, the internet, and a combination of these networks. In some embodiments, the network 130 may be suitable to provide video frames output from the a high definition video disc player fast enough to avoid any lag at the client device.

Application server 150 may communicate with clients directly over network 130. Application server 140 may receive data and requests from one or more clients via network 130 process those requests, and provide video and other content directly to one or more of clients 110-120. In some embodiments, application server 150 may include a network server that processes requests received over network 130.

Application server 150 may include one or more machines for providing a video experience, such as a Blue Ray or DVD video experience, directly to one or more clients over a network 130. The servers may be implemented “in the cloud” and may be streamed to client devices 110 and 120. The servers provide direct and fast content delivery to each client. For example, a user may provide input at client 110 to get instant access to any frame in a high definition video such. To achieve this, application server 150 may provide frame process by frame process transmission from the video player “in the cloud” to the client device receiving the frame process by frame process transmission. More information for application server 150 is discussed with respect to FIG. 2.

Data store 160 may store data which is accessed, stored, and processed by application server 150. Data store 160 may include data such as Blu-ray video content, featurettes and other content commonly found on Blu-ray discs, menu content for a Blu-ray disc, related interviews, articles, news, video games, media, soundtrack and other audio, and other data associated with a movie, actors within a movie, or otherwise associated with one or more movies stored at data store 160, contacts and account information for a user associated with the service provided by application server 150, and other data.

Data store 160 may include physical media such as blue ray discs, DVD discs, laser disks, CD disks, and other optical media discs suitable for playback on a corresponding disk player. The physical media may collectively form an optical disk “jukebox in the cloud” such that a user may provide input from a client device to access one or more disks from the collection of disks, and the content may be streamed to the user's client device. In some instances, content from more than one disk may be provided simultaneously directly to the user client device.

FIG. 2 provides a block diagram of an application server. The application server 200 of FIG. 2 includes Blu-ray player 210, graphical user interface engine 220, and search engine 230. Though only a Blu-ray player is illustrated in FIG. 2, it is intended that other video players may be used.

Blu-ray player 210 may provide Blu-ray file playback as controlled by a client device. Search engine 230 may retrieve other content over one or more networks such as the internet, such as related interviews, articles, news, video games, media, soundtrack and other audio, and other data and store that data at data store 160. The graphical user interface engine may construct frames of the transmission provided by Blu-ray player 210 and transmit each of those frames over network 130 to client 110.

The service provided by an application server of the present invention may provide augmented content in addition to the typical content found on a Blu-ray disc. The augmented content may be streamed to include Blu-ray disc featurettes, menu content and other data. The stream content may also include content pulled from other sources than the Blu-ray disc, such as related interviews, articles, news and other information.

Smart content may be overlaid within a graphical user interface provided by the application server to a client. The smart content overlay may allow multiple perspective views. For example, video streams captured with multiple cameras can be viewed by a user individually, such as for example when a user changes a current stream through input received by client 110. In some embodiments, the client 110 may be implemented as a virtual reality headset and the video streams may be changed by the user through the virtual reality headset input. A user may position frames at different locations locally through the virtual reality headset. For example, a user may provide a customized contact interface around a main screen viewable through the virtual reality headset. Setting configurations may be linked and saved to the user's profile, such as subtitle and letter box format preferences and other settings. The setting configurations may be particular to a particular Blu-ray disc, a client device, the user, or set to be associated in some other way.

Community content may also be overlaid for the user as provided by application server 150. For example, community content may include chat features, synchronized viewing, crowd source translation, and commentary. The chat feature may be provided with one or more contacts associated with a user viewing content. The chat feature may allow for a user to chat with one or more users while viewing a particular video. Similarly, viewing of content may be synchronized with one or more other users while viewing a video. The synchronized viewing of content with one or more of the user's contacts may allow interaction with the contacts during the synchronized viewing of the video. The interaction may be triggered using local motion detection, audio detection, or some other input by the client device 110. Real time crowd sourced movie and audio translation may also be provided for the movie and/or community content associated with the video. Commentary and sharing may also be provided in real time.

FIG. 3 is a block diagram of a computing environment. System 300 of FIG. 3 may be implemented in the contexts of the likes of clients 110 and 120, network server 140, application server 150, and data store 160. The computing system 300 of FIG. 3 includes one or more processors 310 and memory 320. Main memory 320 stores, in part, instructions and data for execution by processor 310. Main memory 320 can store the executable code when in operation. The system 300 of FIG. 3 further includes a mass storage device 330, portable storage medium drive(s) 340, output devices 350, user input devices 360, a graphics display 370, and peripheral devices 380.

The components shown in FIG. 3 are depicted as being connected via a single bus 390. However, the components may be connected through one or more data transport means. For example, processor unit 310 and main memory 320 may be connected via a local microprocessor bus, and the mass storage device 330, peripheral device(s) 380, portable storage device 340, and display system 370 may be connected via one or more input/output (I/O) buses.

Mass storage device 330, which may be implemented with a magnetic disk drive or an optical disk drive, is a non-volatile storage device for storing data and instructions for use by processor unit 310. Mass storage device 330 can store the system software for implementing embodiments of the present invention for purposes of loading that software into main memory 310.

Portable storage device 340 operates in conjunction with a portable non-volatile storage medium, such as a floppy disk, compact disk or Digital video disc, to input and output data and code to and from the computer system 300 of FIG. 3. The system software for implementing embodiments of the present invention may be stored on such a portable medium and input to the computer system 300 via the portable storage device 340.

Input devices 360 provide a portion of a user interface. Input devices 360 may include an alpha-numeric keypad, such as a keyboard, for inputting alpha-numeric and other information, or a pointing device, such as a mouse, a trackball, stylus, or cursor direction keys. Additionally, the system 300 as shown in FIG. 3 includes output devices 350. Examples of suitable output devices include speakers, printers, network interfaces, and monitors.

Display system 370 may include a liquid crystal display (LCD) or other suitable display device. Display system 370 receives textual and graphical information, and processes the information for output to the display device.

Peripherals 380 may include any type of computer support device to add additional functionality to the computer system. For example, peripheral device(s) 380 may include a modem or a router.

The components contained in the computer system 300 of FIG. 3 are those typically found in computer systems that may be suitable for use with embodiments of the present invention and are intended to represent a broad category of such computer components that are well known in the art. Thus, the computer system 300 of FIG. 3 can be a personal computer, hand held computing device, telephone, mobile computing device, workstation, server, minicomputer, mainframe computer, or any other computing device. When implemented as a mobile device, the system 300 may include components typical to such devices such as antennas and radios, microphones, LED touch screens, cameras, and other components.

The computer can also include different bus configurations, networked platforms, multi-processor platforms, etc. Various operating systems can be used including Unix, Linux, Windows, Macintosh OS, Android OS, and other suitable operating systems.

The foregoing detailed description of the technology herein has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the technology to the precise form disclosed. Many modifications and variations are possible in light of the above teaching. The described embodiments were chosen in order to best explain the principles of the technology and its practical application to thereby enable others skilled in the art to best utilize the technology in various embodiments and with various modifications as are suited to the particular use contemplated. It is intended that the scope of the technology be defined by the claims appended hereto. 

What is claimed is:
 1. A system for providing formatted content over a network, the system comprising: at least one remote client device; and an application server comprising: a network interface that receive a content request transmitted from the at least one remote client device over a communication network, the received request specifying a content title in a specified video format, a video player associated with the specified video format, wherein the video player plays the requested content title, and a graphic user interface engine executable by a processor to construct a frame of the requested content title as played by the video player, wherein the network interface transmits the constructed frame to the requesting client device over the communication network.
 2. The system of claim 1, wherein the requested video format is one of Blu-Ray, DVD, laser disk, CD, 3D, 4 k, and 8 k.
 3. The system of claim 1, wherein the network interface transmits the frames when the constructed frame is changed in comparison to a preceding frame, and wherein the network interface does not transmit unchanged frames to the client device
 4. The system of claim 3, wherein the received request includes a request for access to a specified frame of content.
 5. The system of claim 1, wherein the application server further provides augmented content to the client device over the communication network, the augmented content related to the requested content title and pulled from one or more available sources.
 6. The system of claim 5, wherein the augmented content includes featurettes, menu content, interviews, articles, news, soundtrack, and other audio data.
 7. The system of claim 1, wherein the application server further provides a content overlay to the client device over the communication network.
 8. The system of claim 7, wherein the content overlay provides multiple perspective views for processed content that have been captured by multiple cameras.
 9. The system of claim 1, wherein the client device is a virtual reality headset.
 10. The system of claim 1, wherein the application server further provides community content to the client device over the communication network.
 11. The system of claim 10, wherein the community content is associated with a chat feature that allows communications generated at the client device to be transmitted to another client device.
 12. The system of claim 10, wherein the community content includes synchronized viewing, crowd source translation, and commentary.
 13. The system of claim 1, wherein the requested content title is a video game.
 14. The system of claim 1, wherein the communication network is the Internet.
 15. The system of claim 1, wherein the processor constructs the frame of the requested content title in accordance to setting configurations associated with a user profile.
 16. The system of claim 15, wherein the setting configuration is different for each client device.
 17. The system of claim 15, wherein the setting configuration is different for each user.
 18. A method for providing formatted content over a network, the method comprising: receiving a content request sent from a remote client device over a communication network to a cloud-based server, the received request specifying a content title in a specified video format; playing the requested content title using a video player associated with the specified video format; constructing a frame of the requested content title as played by the video player; and transmitting the constructed frame over the communication network to the requesting client device.
 19. A non-transitory computer-readable storage medium, having embodied thereon a program executable by a processor to perform a method for providing formatted content over a network, the method comprising: receiving a content request sent from a remote client device over a communication network to a cloud-based server, the received request specifying a content title in a specified video format; playing the requested content title using a video player associated with the specified video format; constructing a frame of the requested content title as played by the video player; and transmitting the constructed frame over the communication network to the requesting client device. 